package com.dayang.redbook.user.relation.biz.service;

import com.dayang.framework.common.domain.response.PageResponse;
import com.dayang.framework.common.domain.response.Response;
import com.dayang.redbook.user.relation.biz.model.vo.*;

/**
 * @author: dayang
 * @since: 2024/12/17
 * @description: 用户关系业务
 */
public interface RelationService {
    /**
     * 关注用户
     * @param followUserReqVO 关注的用户id
     * @return
     */
    Response<?> follow(FollowUserReqVO followUserReqVO);

    /**
     * 取关用户
     * @param unfollowUserReqVO 被取关的用户id
     * @return
     */
    Response<?> unfollow(UnfollowUserReqVO unfollowUserReqVO);

    /**
     * 查询关注列表
     * @param findFollowingListReqVO
     * @return
     */
    PageResponse<FindFollowingUserRspVO> findFollowingList(FindFollowingListReqVO findFollowingListReqVO);

    /**
     * 查询粉丝列表
     * @param findFansListReqVO
     * @return
     */
    PageResponse<FindFansUserRspVO> findFansList(FindFansListReqVO findFansListReqVO);
}
